Communication apparatus, method for controlling communication apparatus, and program

ABSTRACT

A communication apparatus includes a conversion unit configured to convert data, an estimation unit configured to estimate a size after conversion of the data by the conversion unit before the conversion unit converts the data, and a notification unit configured to notify another communication apparatus of the size estimated by the estimation unit.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.14/166,625, which was filed on Jan. 28, 2014 and which claims priorityto Japanese Patent Application No. 2013-015875, which was filed on Jan.30, 2013. These applications are hereby incorporated by reference intheir entireties.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a communication apparatus forcommunicating converted data.

2. Description of the Related Art

In recent years, a technique for transferring data stored in acommunication apparatus to another communication apparatus usingwireless communication has been practically used. Since a data storageunit of an apparatus generally has a limited space, when data in a largesize is transferred, the storage unit may not have enough free space forthe data and thus cannot transfer the data to another communicationapparatus. To address this problem, Japanese Patent ApplicationLaid-Open No. 2010-114755 discusses a method in which a conversion unitof an image capture device that reduces a data size to the minimum ispreviously selected to perform data conversion prior to startingtransfer.

However, even when the data size is reduced by performing the dataconversion, the data size cannot be always made smaller than the freespace of the data storage unit of the communication apparatus, and datatransfer can fail. Since the data conversion processing generallyrequires time, it is not desirable to stop the data transfer after thedata is converted.

SUMMARY OF THE INVENTION

The present invention is directed to a method for transmittingnotification to another communication apparatus at data conversion whenthe data is converted and transmitted to the other communicationapparatus.

According to an aspect of the present invention, a communicationapparatus includes a conversion unit configured to convert data, anestimation unit configured to estimate a size after conversion of thedata by the conversion unit before the conversion unit converts thedata, and a notification unit configured to notify another communicationapparatus of the size estimated by the estimation unit.

Further features of the present invention will become apparent from thefollowing description of exemplary embodiments with reference to theattached drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a network configuration diagram according to apresent exemplary embodiment.

FIGS. 2A and 2B are block diagrams illustrating a configuration of adigital camera.

FIGS. 3A and 3B are block diagrams illustrating a configuration of asmart device.

FIG. 4, which includes FIGS. 4A and 4B, is a flowchart illustrating datatransfer processing performed by the digital camera according to a firstexemplary embodiment.

FIG. 5 is a flowchart illustrating data reception processing performedby the smart device according to the first exemplary embodiment.

FIG. 6 is a flowchart illustrating transfer permission determinationperformed by the smart device according to the first exemplaryembodiment.

FIG. 7 is a sequence diagram illustrating data transfer according to thefirst exemplary embodiment.

DESCRIPTION OF THE EMBODIMENTS

Various exemplary embodiments, features, and aspects of the inventionwill be described in detail below with reference to the drawings.

FIG. 1 illustrates a network configuration diagram according to anexemplary embodiment.

The network illustrated in FIG. 1 includes a digital camera 101 servingas a wireless communication apparatus and a smart device 102 serving asanother wireless communication apparatus. According to the presentexemplary embodiment, the digital camera 101 and the smart device 102have a wireless communication function.

The wireless communication function according to the present exemplaryembodiment is described as a wireless local area network (LAN) functioncompliant with the IEEE802.11 series. However, alternatively, otherwireless communication functions including Bluetooth (registeredtrademark), multiband orthogonal frequency-division multiplexing (OFDM)alliance (MBOA), ultra wide band (UWB), ZigBee, and near fieldcommunication (NFC) may be used. Further, in place of the wirelesscommunication, wired communication such as wired LAN may be used.

UWB includes wireless USB, wireless 1394, and Winet.

Each of the digital camera 101 and the smart device 102 can establishand search a wireless LAN network 103.

FIG. 2A is a block diagram illustrating an example of a hardwareconfiguration of the digital camera 101.

A wireless LAN control unit 201 performs protocol processing on driversperforming various types of control including wireless LAN radiofrequency (RF) control, wireless LAN communication processing, andwireless LAN communication compliant with IEEE802.11, and protocolprocessing relating to the wireless LAN communication. An antenna 202 isused to perform the wireless LAN communication. A control unit 203controls the entire digital camera 101 by executing a control programstored in a storage unit 204. A storage unit 204 stores the controlprogram to be executed by the control unit 203 and various types ofinformation including a parameter required for communication. Varioustypes of operations described below are performed when the control unit203 executes the control program stored in the storage unit 204. Anoperation unit 205 is used to operate the digital camera 101. A displayunit 206 performs various types of displays and has a function ofoutputting visually recognizable information, for example, a liquidcrystal display (LCD) and a light emitting diode (LED), and a functionof outputting sound, for example, a speaker. The digital camera 101includes a microphone 207, a packet transmission and reception unit 208for transmitting and receiving a packet for various types ofcommunications, and an image capture unit 209 for capturing an opticalimage of an object. An image processing unit 210 converts a capturedimage output from the image capture unit 209 into image data in apredetermined format and performs various types of processing such ascorrection of brightness and color of the image data. An encoding anddecoding unit 211 performs a predetermined highly-efficient encoding(e.g., discrete cosine transform (DCT) conversion, variable lengthencoding after quantization) on the image data output from the imageprocessing unit 210. A recording and reproduction unit 212 records andreproduces the compressed and encoded image data into and from arecording medium (not illustrated). A power source unit 213 suppliespower to the digital camera 101.

FIG. 2B is a block diagram illustrating a software that can be realizedwhen the control unit 203 reads the program stored in the storage unit204.

An instruction determination unit 251 determines whether a user hasgiven an instruction to transfer the data via a button of the operationunit 205. A data determination unit 252 determines whether the data tobe transferred is to be converted. A conversion unit 253 converts datausing the image processing unit 210 and the encoding and decoding unit211. An estimation unit 254 estimates an approximate size (size value)of converted transfer data. A storage control unit 255 controls thestorage unit 204 and determines whether the storage unit 204 has freespace.

A notification unit 256 notifies a transmission destination of the dataof transfer data information including the approximate size estimated bythe estimation unit 254. A reception unit 257 receives a transferpermission or a transfer non-permission. A transfer determination unit258 determines whether the data can be transferred. A transmission unit259 transmits the data using the packet transmission and reception unit208 and the wireless LAN control unit 201. A display control unit 260controls the display unit 206 to perform various types of displays.

FIG. 3A is a block diagram illustrating one example of a hardwareconfiguration of the smart device 102.

A wireless LAN control unit 301 performs protocol processing on thedrivers performing various types of control including the wireless LANRF control, the wireless LAN communication processing, and the wirelessLAN communication compliant with the IEEE802.11 series, and protocolprocessing relating to the wireless LAN communication. An antenna 302 isused to perform the wireless LAN communication. A public wirelessnetwork control unit 303 performs protocol processing on driversperforming RF control, public wireless network communication processing,and various types of control for the public wireless networkcommunication, and protocol processing relating to the public wirelesscommunication. The public wireless communication is compliant with, forexample, the international multimedia telecommunications (IMT) standardand the long term evolution (LTE) standard. An antenna 304 is used toperform the public wireless communication. A packet transmission andreception unit 305 transmits and receives the packet for various typesof communications. A control unit 306 controls the entire smart device102 by executing the control program stored in a storage unit 307. Thestorage unit 307 stores the control program to be executed by thecontrol unit 306 and various types of information about the parameterrequired for the communication. Various types of operations describedbelow are performed when the control unit 306 executes the controlprogram stored in the storage unit 307. A power source unit 308 suppliespower to the smart device 102.

A display unit 309 performs various types of displays and has a functionof outputting visually recognizable information, for example, an LCD andan LED, and of outputting sound, for example, a speaker. An operationunit 310 is used to operate the smart device 102. The smart device 102includes a voice communication unit 311 used by the user to speak and amicrophone 312.

FIG. 3B is a block diagram illustrating the software that can berealized when the control unit 306 reads the program stored in thestorage unit 307.

A reception unit 351 receives the transfer data information includingthe approximate size. A storage control unit 352 controls the storageunit 307. A deletion unit 353 deletes the data saved in the storage unit307. A transfer determination unit 354 determines whether the data canbe transferred from the digital camera 101. A transmission unit 355transmits the transfer permission and the transfer non-permission of thedata. A display control unit 356 controls the display unit 309 toperform various types of displays.

All function blocks illustrated in FIGS. 2 and 3 have mutualrelationships as software or hardware. Further, the above-describedfunction blocks are described as an example, and a plurality of functionblocks may constitute one function block, or any of function blocks maybe further divided into blocks performing a plurality of functions.

According to the present exemplary embodiment, when the digital camera101 and the smart device 102 start a smart device cooperation mode, thedigital camera 101 and the smart device 102 activate the wireless LANfunction to perform connection processing. Subsequently, when datatransfer is instructed, the digital camera 101 calculates an approximatesize of the converted data, and then notifies the smart device 102 ofthe approximate size. The smart device 102 determines whether the datacan be transferred based on the approximate size, and responds to thedigital camera 101. Upon receiving the transfer permission, the digitalcamera 101 converts the data, and then transfers the converted data. Theabove-described processing will be described with reference to FIGS. 4to 7.

FIG. 4, which includes FIGS. 4A and 4B, is an operation flow when thedigital camera 101 starts data transfer processing. The operation flowcan be realized by reading and executing the program stored in thestorage unit 204 by the control unit 203. According to the presentexemplary embodiment, the start of the data transfer processing istriggered by the instruction determination unit 251 determining that theuser has instructed the digital camera 101 to transfer the data via abutton operation. In addition to the trigger described above, the startof the data transfer processing may be triggered by the user's operationof the operation unit 310 of the smart device 102 for requesting thedigital camera 101 to transfer the data. The image (moving image orstill image) data will be described as an example of the data to betransferred.

When the data transfer processing is started, in step S401, thetransmission unit 259 transmits a data transfer start notification tothe smart device 102, which is the transmission destination of the data.In step S402, the data determination unit 252 determines whether thetransfer data is to be converted. The determination of whether thetransfer data is to be converted is performed based on, for example, aformat (data type), the image capture mode, and the size of the data.More specifically, when the data is the moving image data generated in apredetermined mode, it is determined that the data is to be converted.However, in addition to the determination method described above, othermethods can be used. For example, if the user instructs the digitalcamera 101 to convert the data via the button operation, the datadetermination unit 252 may determine that the transfer data is to beconverted.

When the data is to be converted (YES in step S402), the processingproceeds to step S403, and when the data is not to be converted (NO instep S402), the processing proceeds to step S407. In step S403, theconversion unit 253 sets conversion quality, and then the processingproceeds to step S404. The conversion quality refers to informationindicating quality of the converted data that is determined by a bitrate, resolution, and a method such as coding. According to the presentexemplary embodiment, the resolution of the data to be converted is notchanged, and the conversion quality of the data to be converted is setto be the predetermined bit rate (4 Mbps), which is lower than that ofthe data before being converted. Further, the conversion quality may beset according the user's instruction.

In step S404, the estimation unit 254 estimates the approximate size ofthe converted transfer data. The approximate size is calculated by “sizeof header information+reproduction time×bit rate+cluster size of filesystem”. However, it is not limited thereto. For example, a table inwhich the size before being converted and the size after being convertedare associated with each other may be previously stored in the storageunit 204, and the estimation unit 254 may estimate the approximate sizewith reference to the table.

In step S405, the storage control unit 255 determines whether thestorage unit 204 of the digital camera 101 has the enough free space forthe transfer data with the approximate size. When the storage unit 204has enough free space (YES in step S405), the processing proceeds tostep S406. When the storage unit 204 has no free space (NO in stepS405), the processing proceeds to step S418. In step S418, the displaycontrol unit 260 causes the display unit 206 to display an indication offailure of transfer, and the processing proceeds to step S419.

In steps S406 and S407, the notification unit 256 notifies the smartdevice 102, which is the transmission destination of the data, of thetransfer data information, and then the processing proceeds to stepS408. The transfer data information includes at least identification(ID), a format, the resolution, a size before being converted, and theapproximate size of the data.

In step S408, the reception unit 257 receives the transfer permission orthe transfer non-permission of the data from the smart device 102. Thetransfer permission permits to transfer the data from the digital camera101 to the smart device 102, and the transfer non-permission does notpermit to transfer the data.

In step S409, the transfer determination unit 258 determines whether thedata can be transferred. The determination of whether the data can betransferred is performed based on the transfer permission or thetransfer non-permission from the smart device 102 responding to thetransfer data information notification. When the data can be transferred(i.e., when the transfer permission is received) (YES in step S409), theprocessing proceeds to step S410. When the data cannot be transferred(i.e., when the transfer non-permission is received) (NO in step S409),the processing proceeds to step S418. In step S418, the display controlunit 260 causes the display unit 206 to display an indication of failureof transfer, and the processing proceeds to step S419.

According to the present exemplary embodiment, when it is determinedthat the data cannot be transferred, the data transfer processing isended. However, when the transfer data is to be converted, theprocessing is not ended and may be returned to step S403 to continue theprocessing. At this point, the conversion quality is lowered than thatset in a previous setting. For example, if the bit rate is 4 Mbps in theprevious setting, the bit rate may be changed to 2 Mbps. With thisarrangement, when the estimation unit 254 estimates the approximate sizeagain, the approximate size is estimated to be smaller than that in theprevious setting. Therefore, the data before setting change of theconversion quality, which cannot be transmitted to the smart device 102,may be able to be transmitted after setting change of the conversionquality.

In step S410, it is determined whether the transfer data is to beconverted. When the transfer data is to be converted (YES in step S410),the processing proceeds to step S411. When the transfer data is not tobe converted (NO in step S410), the processing proceeds to step S414. Instep S411, the conversion unit 253 converts the data and further, instep S412, notifies the smart device 102 of progress of the dataconversion. The data can be converted by performing conversion encodingbased on the conversion quality set in step S403 and estimation encodingfor changing a frame configuration with only I frames to a configurationwith I frames, P frames, and B frames. The I frame, the P frame, and theB frame are respectively referred to an Intra-coded frame, a Predictedframe, and Bi-directional Predicted frame. Method for converting thedata is not limited to the methods described above. Further, as for thenotification of the progress of the data conversion, a ratio of areproduction time of the transfer data that has been converted relativeto an entire reproduction time of the transfer data to be transferred isnotified in a percentage notation. However, notification operation isnot limited to the operation described above. The processing iscontinuously performed until the data conversion is completed (until YESis obtained in step S413). When the data conversion is completed, theprocessing proceeds to step S414.

In step S414, the transmission unit 259 transmits the transfer data tothe smart device 102, and the processing proceeds to step S415.According to the present exemplary embodiment, when the transfer data istransmitted, the transfer data in an actual size is also transmitted.When the data is to be converted, the actual size refers to the datasize after the data is converted, and when the data is not to beconverted, the actual size refers to the data size before the data isconverted. Based on the actual size, the smart device 102 can performagain determination of whether the transfer data can be stored. Further,the transfer data is divided into the packets for each predeterminedsize to be transmitted. However, a transfer operation is not limited tothe operation described above.

In step S415, the reception unit 257 determines whether the notificationindicating that the data cannot be transferred has been received fromthe smart device 102. When the notification indicating that the datacannot be transferred has not been received (NO in step S415), theprocessing proceeds to step S416, and when received (YES in step S415),the processing proceeds to step S418. In step S418, the display controlunit 260 causes the display unit 206 to display an indication of failureof transfer, and the processing proceeds to step S419.

In step S416, the transmission unit 259 determines whether all thetransfer data has been transmitted. When all the data has beentransmitted (YES in step S416), the processing proceeds to step S417.The display control unit 260 causes the display unit 206 to display anindication of success of transfer, and the processing proceeds to stepS419. When all the data has not been transmitted (NO in step S416), theprocessing returns to step S414. In step S419, the transmission unit 259transmits data transfer completion notification to the smart device 102and the data transfer processing is ended. According to the presentexemplary embodiment, when the data transfer is failed due to a shortageof the free space of the digital camera 101, and also when the datatransfer is failed due to the shortage of the free space of the smartdevice 102, the same display is indicated. However, display operation isnot limited to the operation described above, the different display maybe indicated depending on a cause of the transfer failure of the data.In this case, the cause of the failure of the data transfer is displayedon each of the displays. With this arrangement, which of the digitalcamera 101 and the smart device 102 should increase the free space canbe determined to delete a file.

FIG. 5 is an operation flow when the smart device 102 starts the datareception processing. The operation flow can be realized by reading andexecuting the program stored in the storage unit 307 by the control unit306. According to the present exemplary embodiment, the start of thedata reception processing is triggered by the digital camera 101receiving the data transfer start notification. However, start operationis not limited to the operation described above.

In step S501, the reception unit 351 receives the transfer datainformation, and the processing proceeds to step S502. In step S502, itis determined whether the transfer data is support data. Thedetermination of whether it is the support data is performed based onwhether a format of the data included in the transfer data informationis a reproducible format. However, determination operations not limitedto the operation described above. When the transfer data is the supportdata (YES in step S502), the processing proceeds to step S503. When itis not the support data (NO in step S502), the processing proceeds tostep S507. In step S507, the transmission unit 355 transmits thetransfer non-permission as the transfer permission and non-permissionresponse, and then the data reception processing is ended. When thetransmission unit 355 transmits the transfer non-permission, the digitalcamera 101 does not perform the data conversion processing and the datatransmission. In other words, the transfer non-permission can bereferred to as a signal for stopping the digital camera 101 to performthe data conversion processing. With this arrangement, the digitalcamera 101 can be prevented from performing the data conversionprocessing and the data transmission even if the smart device 102 cannotreceive the data due to the shortage of the free space.

In step S503, it is determined whether the transfer data informationincludes the approximate size of the transfer data. When the transferdata information includes the approximate size (YES in step S503), theprocessing proceeds to step S504. When the transfer data informationdoes not include the approximate size (NO in step S503), the processingproceeds to step S506. In step S504, the transfer determination unit 354determines whether the data can be transferred, and the processingproceeds to step S505. With reference to FIG. 6, details of thedetermination of whether the data can be transferred will be describedbelow.

In step S601, the storage control unit 352 determines whether thestorage unit 307 has the free space for the approximate size. When thestorage unit 307 has the free space (YES in step S601), the processingproceeds to step S602. The transfer determination unit 354 determinesthat the data can be transferred, and then ends the transferdetermination processing. Having the free space refers to that theapproximate size received by the reception unit 351 is smaller than thefree space of the storage unit 307.

On the other hand, when the storage unit 307 has no free space (NO instep S601), the processing proceeds to step S603. Having no free spacerefers to that the approximate size received by the reception unit 351is larger than the free space of the storage unit 307. In step S603, thestorage control unit 352 determines whether an excess amount of theapproximate size relative to the free space is a predetermined value ormore. The predetermined value refers to a space for 1 to 2 pieces ofstill image data, for example. When the excess amount is thepredetermined value or more (YES in step S603), the processing proceedsto step S606. In step S606, the transfer determination unit 354determines that the data cannot be transferred, and then ends thetransfer determination. When the space is less than the predeterminedvalue (NO in step S603), the processing proceeds to step S604. In stepS604, the storage control unit 352 determines whether to deleteunnecessary data. The unnecessary data refers to temporarily saved dataor the data of which a predetermined period has elapsed since it hasbeen stored. However, unnecessary data is not limited to the datadescribed above.

Whether to delete the unnecessary data is determined depending onwhether the storage unit 307 stores the unnecessary data. However it maybe determined depending on another unit. For example when the userpermits deletion via the button operation, the data specified to bedeleted by the user is deleted. In this case, the excess amount may benotified to the user. With this arrangement, the user can be previouslyinformed how much of the data and which data should be deleted.

When the data is deleted (YES in step S604), the processing proceeds tostep S605. When the data is not deleted, the processing proceeds to stepS606 (NO in step S604). In step S606, the transfer determination unit354 determines that the data cannot be transferred, and the transferdetermination is ended. In step S605, the deletion unit 353 deletes thedata and the processing returns to step S601. The data deletionoperation is for deleting the unnecessary data. However, the data is notlimited to the unnecessary data. For example, the user may select thedata to be deleted from existing data displayed in a list on the displayunit 309. As described above, the data is deleted from the storage unit307 so that the data in a size that cannot be saved in the storage unit307 before can be saved by the deletion of the data.

Further, for example, the unnecessary data may be transmitted to aserver (not illustrated) and stored in the server (i.e., the data issaved in the server), and then the saved data may be deleted. The servermay be on the Internet, or on the LAN connected with the smart device102 via a wired network or a wireless network. Furthermore, the data isnot limited to be transmitted to the server but may also be transmittedto the digital camera 101. With this arrangement, since the unnecessarydata is deleted from the storage unit 307 but saved in another device,the user can refer to the unnecessary data later and also the smartdevice 102 can obtain the converted data from the digital camera 101.

As a result of the processing illustrated in FIG. 6, when the data canbe transferred (YES in step S505), the processing proceeds to step S506.When the data cannot be transferred (NO in step S505), the processingproceeds to step S507. In step S507, the transmission unit 355 transmitsthe transfer non-permission as the transfer permission andnon-permission response, and ends the data reception processing. On theother hand, in step S506, the transmission unit 355 transmits thetransfer permission as the transfer permission and non-permissionresponse, and the processing proceeds to step S508. In step S508, thereception unit 351 determines whether the data conversion progressnotification has been received from the digital camera 101. When thedata conversion progress notification has been received (YES in stepS508), the processing proceeds to step S509. The display control unit356 causes the display unit 309 to display a data conversion progressratio using a progress bar. In place of the progress bar, the dataconversion progress ratio may be displayed as a value.

When the digital camera 101 starts the data transmission, the receptionunit 351 of the smart device 102 receives the data and the processingproceeds to step S510. In step S510, the storage control unit 352determines whether the storage unit 307 has the free space for theactual size included in the reception data. When the storage unit 307does not have enough free space (NO in step S510), the processingproceeds to step S511. The notification indicating that the data cannotbe transferred is transmitted to the digital camera 101, and the datareception processing is ended. When the transmission unit 355 transmitsthe notification indicating that the data cannot be transferred, thedigital camera 101 instantly ends the data transmission. With thisarrangement, the digital camera 101 can prevent from continuing the datatransmission even if the smart device 102 cannot receive the data due tothe shortage of the free space.

On the other hand, when the storage unit 307 has the free space (YES instep S510), then in step S512, the data is stored (saved) in the storageunit 307. Under receiving the data (NO in step S513), the displaycontrol unit 356 causes the display unit 309 to display data receptionprogress until all the data is received. The data reception progress isdisplayed with the ratio of the received data size to the size of thetransfer data on the display unit 309 using the progress bar. However,display operation is not limited to the operation described above. Whenall the data is received (YES in step S513), the processing illustratedin FIG. 5 is ended.

An example of data transfer sequence between the digital camera 101 andthe smart device 102 in configurations illustrated in FIGS. 1 to 6 willbe described with reference to FIG. 7. The user releases a shutter aplurality of times via the operation unit 205. A video image capturedfor preceding four seconds for each shutter release is stored in thestorage unit 204 as the moving image data. When the shutter is releasedfive times with different timings, and then the moving images in total20 seconds are stored in the storage unit 204. In other words, themoving image data is generated by combining a plurality of pieces ofvideo data with one another. A bit rate of the moving image data is setto be 20 Mbps. The moving image data will be described below as the datato be converted.

In step M701, the user operates the digital camera 101 to startcommunication with the smart device 102. In step M702, in response tothe operation, the digital camera 101 generates a wireless network, andin step M703, the digital camera 101 starts connection processing. Instep M704, the user operates the smart device 102 to start a smartdevice cooperation mode. In step M705, in response to the operation, thesmart device 102 searches the wireless network generated by the digitalcamera 101 to start the connection processing. In step M706, theconnection processing is performed between the digital camera 101 andthe smart device 102. The connection processing according to the presentexemplary embodiment includes exchanging parameters of the wirelessnetwork, joining the wireless network, setting Internet protocol (IP)address information, and exchanging service information. In step M707,the user operates the digital camera 101 to instruct the data transfer.According to the present exemplary embodiment, the moving image, whichis the data to be converted, is selected. In step M708, the digitalcamera 101 calculates an approximate size of the converted moving image.In step M709, when the digital camera 101 calculates the approximatesize, the digital camera 101 transmits the transfer data informationnotification. The transfer data information notification includes theapproximate size of the moving image. In step M710, upon receiving thetransfer data information notification, the smart device 102 performstransfer permission and non-permission determination. In step M711, thesmart device 102 transmits the transfer permission and non-permissionresponse. It is determined that the data can be transferred. In stepM712, the smart device 102 starts to receive the data. In step M713,upon receiving the transfer permission and non-permission response, thedigital camera 101 starts to convert the data. In step M714, the digitalcamera 101 transmits notification of the data conversion progress. Instep M715, upon receiving the notification of the data conversionprogress, the smart device 102 displays the data conversion progress. Instep M716, upon completing the data conversion, the digital camera 101starts to transmit the data. In step M717, the digital camera 101transmits the data. In step M718, upon receiving the data, the smartdevice 102 saves the data. In step M719, the smart device 102 displaysthe data reception progress. In step M720, upon completion of the datatransmission, the digital camera 101 deletes the converted data.

According to the present exemplary embodiment, it is configured that,when the smart device cooperation mode is started, the digital camera101 generates the wireless network so that the smart device 102 join thewireless network. However, another configuration may be applied. Forexample, the smart device 102 generates a wireless network so that thedigital camera 101 joins the wireless network.

Further, the smart device 102 displays the data conversion progress andthe data reception progress. However, the smart device 102 may notdisplay them. For example, when the digital camera 101 is activated in amode for operating only the digital camera 101, battery consumption ofthe smart device 102 can be reduced by not performing display.

Further, after the digital camera 101 completed the data transmission,the digital camera 101 deletes the converted data. However, theconverted data may be deleted at different timing. For example, theconverted data may be deleted when the free storage space isinsufficient. With this arrangement, the data conversion process isomitted when the same data is transferred to another communicationapparatus. Therefore, the time required for the data transfer can bereduced.

Furthermore, according to the present exemplary embodiment describedabove, the size of the converted data is estimated, and then theestimated size is notified to the communication partner, which is thetransmission destination of the data. Notification operation is notlimited to the operation described above, but a predetermined size maybe notified to the communication partner. The predetermined size refersto, for example, a maximum value (e.g., 500 Mbyte) of the data size tobe transmitted. With this arrangement, without performing theabove-described estimation, a data size can be previously notified tothe communication partner. When the communication partner already knowsthe maximum value of the size of the data to be transmitted, the data tobe transmitted or the number of the data files to be transmitted may benotified to the communication partner to inquire whether to transmit theconverted data. By performing processing for receiving the datacorresponding to the maximum value of the data size to the communicationpartner, a similar effect can be obtained.

As described above, according to the present exemplary embodiment,without performing unnecessary processing in advance, the data can bemore securely transferred. In other words, since, before the data isconverted, the size of the converted data is estimated and the estimatedsize is notified to another communication apparatus, the othercommunication apparatus can determine whether to convert and transferthe data. Therefore, the data transfer can be prevented from beingstopped after the data is converted.

A system or an apparatus with a storage medium storing a computerprogram of the software realizing the above-described function may beprovided according to the present exemplary embodiment. In this case, acomputer (central processing unit (CPU) and micro processing unit (MPU))of the system or the apparatus reads and executes the program codestored in the storage medium. The computer program itself read from thestorage medium realizes the above-described functions according to thepresent exemplary embodiment, and the storage medium storing thecomputer program is in the configuration of the present invention.

The storage medium for supplying the computer program includes aflexible disk, a hard disk, an optical disk, an optical magnetic disk, acompact disk-read only memory (CD-ROM), a CD-recordable (CD-R), amagnetic tape, a non-volatile memory card, a read only memory (ROM), anda digital versatile disk (DVD).

The computer may execute the read computer program so that, based on aninstruction of a program code, an operating system (OS) running on thecomputer can perform a part or all of actual processing to realize theabove-described functions.

Further, the computer program read from the storage medium is writteninto a memory included in a function extension board inserted in thecomputer and a function extension unit connected to the computer. Basedon an instruction of the program code, the CPU included in the functionextension board and the function extension unit may execute a part orall of the actual processing to realize the above-described functions.

According to the present invention, notification can be transmitted toanother communication apparatus at data conversion when the data isconverted and transmitted to the other communication apparatus.

Embodiments of the present invention can also be realized by a computerof a system or apparatus that reads out and executes computer executableinstructions recorded on a storage medium (e.g., non-transitorycomputer-readable storage medium) to perform the functions of one ormore of the above-described embodiment(s) of the present invention, andby a method performed by the computer of the system or apparatus by, forexample, reading out and executing the computer executable instructionsfrom the storage medium to perform the functions of one or more of theabove-described embodiment(s). The computer may comprise one or more ofa central processing unit (CPU), micro processing unit (MPU), or othercircuitry, and may include a network of separate computers or separatecomputer processors. The computer executable instructions may beprovided to the computer, for example, from a network or the storagemedium. The storage medium may include, for example, one or more of ahard disk, a random-access memory (RAM), a read only memory (ROM), astorage of distributed computing systems, an optical disk (such as acompact disc (CD), digital versatile disc (DVD), or Blu-ray Disc (BD)™),a flash memory device, a memory card, and the like.

While the present invention has been described with reference toexemplary embodiments, it is to be understood that the invention is notlimited to the disclosed exemplary embodiments. The scope of thefollowing claims is to be accorded the broadest interpretation so as toencompass all such modifications and equivalent structures andfunctions.

What is claimed is:
 1. A communication apparatus comprising: aconversion unit configured to convert data; a first estimation unitconfigured to estimate, before the conversion unit converts the data, asize of the data after being converted by the conversion unit; anotification unit configured to notify another communication apparatusof the size estimated by the first estimation unit; a transmission unitconfigured to transmit the data converted by the conversion unit to saidanother communication apparatus; and a control unit configured tocontrol, according to a response to the notification by the notificationunit, whether to transmit the data converted by the conversion unit tosaid another communication apparatus.
 2. The communication apparatusaccording to claim 1, wherein before the conversion unit converts thedata, the notification unit notifies said another communicationapparatus of the size estimated by the first estimation unit.
 3. Thecommunication apparatus according to claim 1, wherein the conversionunit converts the data so as to reduce a size of the data.
 4. Thecommunication apparatus according to claim 1, further comprising adetermination unit configured to determine a transfer instruction of thedata issued by a user, wherein in a case where the determination unitdetermines the transfer instruction of the data, the first estimationunit estimates the size of the data after being converted.
 5. Thecommunication apparatus according to claim 1, wherein the data is dataof a moving image captured by an image capture unit, and wherein theconversion unit converts a bit rate of the data.
 6. The communicationapparatus according to claim 5, wherein the first estimation unitestimates the size of the data after being converted, based on at leasta bit rate of the data after being converted by the conversion unit anda reproduction time of the data.
 7. The communication apparatusaccording to claim 1, wherein the data is data of an image captured byan image capture unit, and wherein the conversion unit converts aresolution of the data.
 8. The communication apparatus according toclaim 1, wherein the data is data of a still image captured by an imagecapture unit.
 9. The communication apparatus according to claim 1,further comprising a reception unit configured to receive from saidanother communication apparatus information indicating whether to allowtransfer of the data, as a response to the notification by thenotification unit, wherein the conversion unit converts the data in acase where the reception unit receives information indicating that thetransfer of the data is allowed.
 10. The communication apparatusaccording to claim 9, wherein the conversion unit does not convert thedata in a case where the reception unit receives information indicatingthat the transfer of the data is not allowed.
 11. The communicationapparatus according to claim 9, wherein the reception unit receives theinformation indicating that the transfer of the data is allowed, in acase where said another communication apparatus has a memory area forstoring the data converted by the conversion unit, and wherein thereception unit receives information indicating that the transfer of thedata is not allowed, in a case where said another communicationapparatus does not have the memory area for storing the data convertedby the conversion unit.
 12. The communication apparatus according toclaim 9, further comprising a change unit configured to change, in acase where the reception unit receives information indicating that thetransfer of the data is not allowed, a conversion quality of the dataafter being converted by the conversion unit to other conversionquality; and a second estimation unit configured to estimate a size ofthe data after being converted based on the other conversion quality.13. A method for controlling a communication apparatus, the methodcomprising: converting data; estimating, before the data is converted, asize of the data after being converted; notifying another communicationapparatus of the estimated size; transmitting the converted data to saidanother communication apparatus; and controlling, according to aresponse to the notification, whether to transmit the converted data tosaid another communication apparatus.
 14. A non-transitorycomputer-readable storage medium for storing a program that causes acomputer to perform a method for controlling a communication apparatus,the method comprising: converting data; estimating, before the data isconverted, a size of the data after being converted; notifying anothercommunication apparatus of the estimated size; transmitting theconverted data to said another communication apparatus; and controlling,according to a response to the notification, whether to transmit theconverted data to said another communication apparatus.